package cn.xeblog.plugin.action.handler.command;

import cn.xeblog.plugin.action.ConsoleAction;
import cn.xeblog.plugin.annotation.DoCommand;
import cn.xeblog.plugin.enums.Command;
import cn.xeblog.plugin.mode.ModeContext;
import cn.xeblog.plugin.mode.ModeEnum;

/**
 * 设置模式命令
 *
 * @author anlingyi
 * @date 2020/9/1
 */
@DoCommand(Command.MODE)
public class ModeCommandHandler extends AbstractCommandHandler {

  @Override
  public void process(String[] args) {
    if (args.length < 1) {
      return;
    }

    // 通过传的参数获取相关模式
    ModeEnum mode = ModeEnum.getMode(Integer.parseInt(args[0]));
    if (mode == null) {
      return;
    }

    // 设置指定模式
    ModeContext.setMode(mode);
    // 发送用户提示消息
    ConsoleAction.showSimpleMsg("【" + mode.getName() + "】模式设置成功！");
  }

  @Override
  protected boolean check(String[] args) {
    return true;
  }
}
